[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Int 21  - DOS 2+ - "lseek" - Set Current File Position                     [!]

   AH = 42h
   AL = origin of move
       00h start of file
       01h current file position
       02h end of file
   BX = file handle
   CX:DX = offset from origin of new file position

Return: CF clear if successful
       DX:AX = new file position in bytes from start of file
   CF set on error
       AX = error code (01h,06h) (see AH=59h)

Notes: for origins 01h and 02h, the pointer may be positioned before the
     start of the file; no error is returned in that case, but subsequent
     attempts at I/O will produce errors
   if the new position is beyond the current end of file, the file will
     be extended by the next write (see AH=40h)
BUG:   using this method to grow a file from zero bytes to a very large size
     can corrupt the FAT in some versions of DOS; the file should first
     be grown from zero to one byte and then to the desired large size

See Also: AH=24h,INT 2F/AX=1228h

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson